package	com.sdry.service.impl.tdd.sale;
import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.sdry.model.tdd.sale.SaleMaterielExpenseAccount;
import com.sdry.service.tdd.sale.SaleMaterielExpenseAccountService;
import com.sdry.mapper.tdd.sale.SaleMaterielExpenseAccountMapper;
/**
 *
 *@ClassName: SaleMaterielExpenseAccountService
 *@Description: 费用科目+物料
 *@Author tdd
 *@Date 2019-09-25 11:30:20
 *@version 1.0
*/
@Service
@Transactional(rollbackFor = Exception.class)
public class SaleMaterielExpenseAccountServiceImpl implements SaleMaterielExpenseAccountService {
	@Resource SaleMaterielExpenseAccountMapper saleMaterielExpenseAccountMapper;
	/** 
	 * 根据主键id查询实体
	 * @param id 主键id
	 * @return 实体
	*/
	public SaleMaterielExpenseAccount queryById(Long id) {
		return saleMaterielExpenseAccountMapper.queryById(id);
	}
	/** 
	 * 条件查询所有
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public List<SaleMaterielExpenseAccount> queryAllByMution(SaleMaterielExpenseAccount param) {
		return saleMaterielExpenseAccountMapper.queryAllByMution(param);
	}
	/** 
	 * 条件分页查询
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public List<SaleMaterielExpenseAccount> findPageByMution(SaleMaterielExpenseAccount param) {
		return saleMaterielExpenseAccountMapper.findPageByMution(param);
	}
	/** 
	 * 条件查询记录数
	 * @param param 实体条件
	 * @return 实体集合
	*/
	public Integer selectCountByMution(SaleMaterielExpenseAccount param) {
		return saleMaterielExpenseAccountMapper.selectCountByMution(param);
	}
	/** 
	 * 插入返回id
	 * @param param 实体条件
	 * @return 主键id
	*/
	public Long insert(SaleMaterielExpenseAccount param) {
		return saleMaterielExpenseAccountMapper.insert(param);
	}
	/** 
	 * 根据主键更新 返回影响行数
	 * @param param 实体条件
	 * @return 影响行数
	*/
	public Integer update(SaleMaterielExpenseAccount param) {
		return saleMaterielExpenseAccountMapper.update(param);
	}
	/** 
	 * 根据主键拼接的字符串删除返回影响行数
	 * @param ids 主键拼接的字符串
	 * @return 影响行数
	*/
	public Integer delete(String ids) {
		return saleMaterielExpenseAccountMapper.delete(ids);
	}
	
	/** 
	 * 报表——条件分页查询
	 * @param ename 科目名称
	 * @param whereSql SQL条件
	 * @return 实体集合
	*/
	public List<SaleMaterielExpenseAccount> findPageByMutionReport(int page,int pageSize,String ename,String whereSql){
		return saleMaterielExpenseAccountMapper.findPageByMutionReport(page,pageSize,ename, whereSql);
	}
	/** 
	 * 报表——条件查询记录数
	 * @param ename 科目名称
	 * @param whereSql SQL条件
	 * @return 实体集合
	*/
	public Integer selectCountByMutionReport(String ename,String whereSql){
		return saleMaterielExpenseAccountMapper.selectCountByMutionReport(ename, whereSql);
	}
	/** 
	 * 报表详情——条件分页查询
	 * @param ename 科目名称
	 * @param whereSql SQL条件
	 * @return 实体集合
	 */
	public List<SaleMaterielExpenseAccount> findPageByMutionReportDetails(int page,int pageSize,String ename,String whereSql){
		return saleMaterielExpenseAccountMapper.findPageByMutionReportDetails(page,pageSize,ename, whereSql);
	}
	/** 
	 * 报表详情——条件查询记录数
	 * @param ename 科目名称
	 * @param whereSql SQL条件
	 * @return 实体集合
	 */
	public Integer selectCountByMutionReportDetails(String ename,String whereSql){
		return saleMaterielExpenseAccountMapper.selectCountByMutionReportDetails(ename, whereSql);
	}
}
